﻿namespace Softserve.Pottery.Warehouse.Domains
{
    using System;
    using System.Data.Services.Common;
    using System.Runtime.Serialization;
    using Softserve.Pottery.Infrastructure;
    using Softserve.Pottery.Infrastructure.Interfaces;

    [DataContract]
    [DataServiceEntity]
    public class PotteryWarehouse : IValidatable, IDomain
    {
        public PotteryWarehouse() { }

        #region Properties

        [DataMember]
        public int Id
        {
            get { return m_Id; }
            set { m_Id = value; }
        }

        [DataMember]
        public string Name
        {
            get { return m_Name; }
            set { m_Name = value; }
        }

        [DataMember]
        public int AddressId
        {
            get { return m_AddressId; }
            set { m_AddressId = value; }
        }

        [DataMember]
        public int SquareTotal
        {
            get { return m_SquareTotal; }
            set { m_SquareTotal = value; }
        }

        [DataMember]
        public int SquareFree
        {
            get { return m_SquareFree; }
            set { m_SquareFree = value; }
        }

        [DataMember]
        public DateTime DateCreate
        {
            get { return m_DateCreate; }
            set { m_DateCreate = value; }
        }

        #endregion

        #region Methods

        public bool Validate()
        {
            return true;
        }

        #endregion

        #region Private fields

        private int m_Id = default(int);

        private string m_Name = String.Empty;

        private int m_AddressId = default(int);

        private int m_SquareTotal = default(int);

        private int m_SquareFree = default(int);

        private DateTime m_DateCreate = default(DateTime);

        #endregion

    }
}
